#include "Server.h"

//接收线程
void * pthread_recv(void *arg)
{
    //接收参数
    int sock = *((int  *)arg);
    //声明缓冲区
    char buf[128];
    memset(buf, 0 , sizeof(buf));
    //接收字符数量
    int byte_recv = 0 ;

    static int return_val = 0;

    while (1)
    {
        byte_recv = recv(sock, buf ,sizeof(buf), 0);

        if (-1 == byte_recv)
        {
            ERRLOG("接收错误\n");
            return NULL;
        }
        
        //结束状态
        else if (0 == byte_recv)
        {
            printf("读取结束\n");
            //返回 1 代表TCP 连接结束
            return_val =1;
            return (void *)&return_val;
        }

        printf("\n输入:%s\n",buf);

        memset(buf , 0 ,sizeof(buf));        

    }
    
}

//发送线程
void *pthread_send(void *arg)
{

    //接收参数
    int sock = *((int  *)arg);
    //声明缓冲区
    char buf[128];
    memset(buf, 0 , sizeof(buf));
    
    while (3)
    {
        //从键盘获取字符串
        printf("发送:");
        scanf("%s",buf);
        if(0 == strlen(buf))
        {
            printf("消息不能为空\n");
            continue;
        }    
        //发送
        if (-1 ==send(sock , buf ,strlen(buf),0))
        {
            ERRLOG("写入错误");
            return NULL;
        }
        
        //清空缓冲区
        memset(buf , 0 ,sizeof(buf));       
    }
    

}